1. Field of the Invention
Embodiments of the disclosure relate in general to the field of computers and similar technologies, and in particular to software utilized in this field. Still more particularly, it relates to managing the spatial coordinates and visual attributes of objects within a user interface (UI).
2. Description of the Related Art
The World Wide Web (Web) has become an increasingly popular means of delivering content. Web content is typically delivered in the form of Web pages rendered and delivered from a server, such as the WebSphere Application Server from International Business Machines Corporation. In recent years, it has become increasingly popular for Web pages to also be used as the user interface (UI) for software applications. For example, there may be numerous Web pages in an application where an end user must input data, which in turn drives the behavior of the application. Accordingly, when developing such applications, a set of user interface functional requirements must be created to define all of the associated user-specific inputs, functions, outputs and behaviors. These UI functional requirements typically include Graphical User Interface (GUI) functional templates, detailed user interface work products, specifications and supporting documentation.
While detailed functional specifications are often created for each user interface, aggressive production schedules with shifting deadlines and requirements often result in UI design and developer teams negotiating back and forth before reaching agreement on a final design. These negotiations can introduce confusion and ambiguity. As an example, translating design requirements in terms such as “smaller”, “bigger” or “5px” into actual implementation changes can often prove challenging for UI developers. This issue is further exacerbated when modifications (e.g., a new field is added) or updates are made to the UI. Additional challenges can arise during unit tests when determining if a modified UI matches its design specification. For example, measuring pixels visually is difficult, and can become even more difficult when the measured object on the page is nested into widgets, tables, frames, images with transparent borders, etc.
Existing Web page design approaches include templates, guidelines, and rulers of different kinds, yet each is proprietary to its corresponding vendor. Furthermore, rulers that can be genetically used in a Web page simply measure the distance between any two points within the UI or provide an indication of scale. None of these are able to determine an object's spatial location coordinates within the UI or its distance from another object. Similarly, none of these are able to access the underlying code of a UI object to determine its attributes, such background color, typeface, and font size. In view of the foregoing, it would be advantageous to have a UI ruler that not only provided measurements of objects within a UI, but also their spatial relationship to each other in quantifiable terms. If would be similarly advantageous to be able to determine an object's visual attributes and how it quantifiably relates to another object.